Skip to content

Update @github/copilot to 1.0.45#1263

Merged
stephentoub merged 2 commits into
mainfrom
update-copilot-1.0.45
May 12, 2026
Merged

Update @github/copilot to 1.0.45#1263
stephentoub merged 2 commits into
mainfrom
update-copilot-1.0.45

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

Automated update of @github/copilot to version 1.0.45.

Changes

  • Updated @github/copilot in nodejs/package.json and test/harness/package.json
  • Re-ran all code generators (scripts/codegen)
  • Formatted generated output

Next steps

When ready, click Ready for review to trigger CI checks.

Created by the Update @github/copilot Dependency workflow.

- Updated nodejs and test harness dependencies
- Re-ran code generators
- Formatted generated code
@stephentoub stephentoub marked this pull request as ready for review May 12, 2026 03:37
@stephentoub stephentoub requested a review from a team as a code owner May 12, 2026 03:37
Copilot AI review requested due to automatic review settings May 12, 2026 03:37
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR is an automated dependency bump of @github/copilot to 1.0.45 across the Node SDK and test harness, followed by regenerating the cross-SDK generated RPC/types to match the updated schema.

Changes:

  • Bumped @github/copilot to ^1.0.45 in Node packages/lockfiles.
  • Regenerated SDK types/RPC bindings across Rust/Python/Node/Go/.NET (new fields + new RPC method session.commands.respondToQueuedCommand, removal of workspace summary).
  • Updated generated session-event models (e.g., assistant message model and Anthropic advisor fields; new extension-related approval variants).
Show a summary per file
File Description
test/harness/package.json Bumps @github/copilot dependency version for the test harness.
test/harness/package-lock.json Lockfile refresh for @github/copilot@1.0.45 and platform bins.
rust/src/generated/session_events.rs Updates generated session-event payloads (assistant message + approval variants).
rust/src/generated/rpc.rs Adds generated RPC wrapper for session.commands.respondToQueuedCommand.
rust/src/generated/api_types.rs Adds RPC method constant + request/response types; removes workspace summary.
python/copilot/generated/session_events.py Updates generated session-event models (assistant message + approval kinds).
python/copilot/generated/rpc.py Adds generated RPC request/response models and client method for queued-command responses; removes workspace summary.
nodejs/src/generated/session-events.ts Updates generated TS session-event types (assistant message + approval variants).
nodejs/src/generated/rpc.ts Adds generated TS RPC types and session command method for queued-command responses; removes workspace summary.
nodejs/samples/package-lock.json Updates sample lockfile to @github/copilot@^1.0.45.
nodejs/package.json Bumps @github/copilot dependency version for the Node SDK.
nodejs/package-lock.json Lockfile refresh for @github/copilot@1.0.45 and related metadata.
go/rpc/generated_rpc.go Adds generated Go RPC API/types for queued-command response; removes workspace summary.
go/generated_session_events.go Updates generated Go session-event models (assistant message + approval kinds).
dotnet/src/Generated/SessionEvents.cs Updates generated .NET session-event models (assistant message + approval variants).
dotnet/src/Generated/Rpc.cs Adds generated .NET RPC API/types for queued-command response; removes workspace summary.

Copilot's findings

Files not reviewed (3)
  • nodejs/package-lock.json: Language not supported
  • nodejs/samples/package-lock.json: Language not supported
  • test/harness/package-lock.json: Language not supported
Comments suppressed due to low confidence (1)

go/rpc/generated_rpc.go:2437

  • The QueuedCommandResultHandled constants are string values ("true"/"false"), which further enforces serializing the handled discriminator as a JSON string. If the protocol expects a boolean discriminator, this should be removed in favor of a bool field (or custom JSON marshal/unmarshal) so the wire format uses handled: true|false.
// Handled discriminator for QueuedCommandResult.
type QueuedCommandResultHandled string

const (
	QueuedCommandResultHandledFalse QueuedCommandResultHandled = "false"
	QueuedCommandResultHandledTrue  QueuedCommandResultHandled = "true"
)
  • Files reviewed: 4/16 changed files
  • Comments generated: 2

Comment thread dotnet/src/Generated/Rpc.cs Outdated
Comment thread go/rpc/generated_rpc.go
Generate boolean-discriminated unions as flat DTOs so handled serializes as a JSON boolean.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions
Copy link
Copy Markdown
Contributor Author

Cross-SDK Consistency Review ✅ (with one note)

This is an automated schema update (@github/copilot 1.0.44-3 → 1.0.45) that regenerates all SDKs. The new features land consistently across all five SDKs (TypeScript, Python, Go, .NET, Rust):

Feature TS Python Go .NET Rust
respondToQueuedCommand method
anthropicAdvisorBlocks / anthropicAdvisorModel fields
model field on AssistantMessageData
extension-management / extension-permission-access approval kinds
Removal of summary from WorkspacesGetWorkspaceResultWorkspace

One inconsistency found: Rust QueuedCommandResult is untyped

In rust/src/generated/api_types.rs, the CommandsRespondToQueuedCommandRequest.result field is typed as serde_json::Value, while all other SDKs expose a proper typed QueuedCommandResult structure. The individual variant types (QueuedCommandHandled, QueuedCommandNotHandled) are generated in Rust but aren't composed into a usable union type or used in the request. I've added an inline comment on the relevant line.

This is a codegen limitation (not something this PR can reasonably fix), but worth tracking as a follow-up to improve the Rust code generator's handling of boolean-discriminated union types.

Generated by SDK Consistency Review Agent for issue #1263 · ● 741.3K ·

Copy link
Copy Markdown
Contributor Author

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generated by SDK Consistency Review Agent for issue #1263 · ● 741.3K

}

#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cross-SDK consistency note: The result field here uses serde_json::Value rather than a typed QueuedCommandResult type. All other SDKs expose a typed representation:

  • TypeScript: result: QueuedCommandResult (discriminated union of QueuedCommandHandled | QueuedCommandNotHandled)
  • Python: result: QueuedCommandResult (flat dataclass with handled: bool + optional stop_processing_queue)
  • .NET: result: QueuedCommandResult (flat class with Handled: bool + optional StopProcessingQueue?)
  • Go: result: QueuedCommandResult (flat struct with typed Handled + optional StopProcessingQueue)

The types QueuedCommandHandled and QueuedCommandNotHandled are generated in this file but aren't used here. Rust users must manually construct the JSON payload when calling respondToQueuedCommand, which is less ergonomic than every other SDK.

This appears to be a Rust codegen limitation with boolean-discriminated union types. A follow-up issue to improve the Rust code generator to emit a proper QueuedCommandResult union type (e.g., as an enum with Handled(QueuedCommandHandled) and NotHandled(QueuedCommandNotHandled) variants) would bring the Rust SDK into alignment with the others.

@stephentoub
Copy link
Copy Markdown
Collaborator

@tclem, something to fix in a follow-up?

One inconsistency found: Rust QueuedCommandResult is untyped
In rust/src/generated/api_types.rs, the CommandsRespondToQueuedCommandRequest.result field is typed as serde_json::Value, while all other SDKs expose a proper typed QueuedCommandResult structure. The individual variant types (QueuedCommandHandled, QueuedCommandNotHandled) are generated in Rust but aren't composed into a usable union type or used in the request. I've added an inline comment on the relevant line.

@stephentoub stephentoub merged commit 7e7dac2 into main May 12, 2026
44 checks passed
@stephentoub stephentoub deleted the update-copilot-1.0.45 branch May 12, 2026 12:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants